package org.NooLab.compare.utilities.math;

public interface DistanceControlPropertiesConstants {

	// parameters for the distances based on the feature vector 
	public int __distanceEUCLID = 1 ;
	public int __distanceSPELA  = 2 ; 
	
	public int __setsimilarityPLAIN    = 11 ;
	public int __setsimilarityTVERSKY  = 12 ;
	public int __setsimilarityCRATIO   = 14 ;
	public int __setsimilarityJACCARD  = 15 ;
	public int __setsimilaritySORENSEN = 16 ;
	
	public int __contextmatchSIMPLE    = 21 ; // uses simple set matching
	public int __contextmatchEXTENDED  = 22 ; // uses the set similarity method as defined
	
	
	/** for each MV position, a fixed amount of distance will be added  */
	public int __MV_BySurrogateDistance    = 1 ; 
	/** for each MV position, a distance contribution will be added of size __MV_SurrogateDistance/LENGTH */
	public int __MV_ByAdjSurrogateDistance = 2 ; //
	/** vectors will be shortened, by features if present, or cut-off at first MV position if not */
	public int __MV_ByHardExcludLengthAdj  = 3 ; 
	
	public double __MV_NumericalIndicator  = -1.0 ; 
	/**       */
	public double __MV_SurrogateDistance   = 0.15 ; 
	
	/**       */
	public int __MV_AsItemSetContrast      = 5 ; // see Tversky
	/**       */
	public int __MV_AsItemSetContrastRatio = 6 ; //
	
	/**       */
	public double __MV_ItemSetContrastalpha = 0.25;
	/**       */
	public double __MV_ItemSetContrastbeta  = 0.25;
	/**       */
	public double __MV_ItemSetContrastsigma = 1.0;
	
	// parameters for the distances based on item sets
	
	public int __IS_Contrast      = 5 ; // see Tversky 
	public int __IS_ContrastRatio = 6 ; //
	public int __IS_OTHER_ID = 8 ; //
	public String __IS_OTHER_LABEL = "" ; //

	public double __IS_Contrastsigma = 0.5; // for the union term
	public double __IS_Contrastalpha = 0.5; // A-B
	public double __IS_Contrastbeta  = 0.5; // B-A

	// ???
	public double[] itemSetContrastgamma = new double[0]; // __IS_ItemSetContrastgamma
	
	
	// parameters for the distances based on contexts

}
